package com.maxjay.system.service;

import java.util.List;

import com.maxjay.system.bo.UserInfo;
import com.maxjay.system.po.TSysRole;
import com.maxjay.system.po.TSysUser;

public interface UserService extends BaseService {

	/**
	 * @param loginId
	 * @param password
	 * @return
	 */
	public TSysUser validateUser(String loginId, String password);

	/**
	 * 
	 * @param loginId
	 * @param password
	 * @return boolean
	 * @author:Administrator
	 */
	public boolean validateUserExist(String loginId);

	/**
	 * @return
	 */
	public List<TSysUser> getAllUsers();

	public List<String> getAllUserIds();
	
	public TSysUser getUser(String userId);
	
	public TSysUser getUserByLoginId(String loginId);
	
	/**
	 * 取得用户的所有角色
	 * 
	 * @param userId
	 * @return
	 */
	List<TSysRole> getUserRoles(String userId);
	
	/**
	 * 初始化用户权限
	 * 
	 * @param user
	 */
	void initUserRights(UserInfo user);
	
	/**
	 * 初始化用户角色信息
	 * 
	 * @param user
	 */
	void initUserRoles(UserInfo user);
	
	/**
	 * 根据用户PO得到用户的BO
	 * 
	 * @param user
	 * @return
	 */
	UserInfo initUserInfo(TSysUser user);
}
